// #include <iostream>
//
// using namespace std;
//
// void test_one()
// {
//     int a = 1;
//     {
//         throw 0;
//     }
//
//     cout << a << endl;
// }
//
// void test_two()
// {
//     int a = 1;
//     {
//         throw 1.1;
//     }
//
//     cout << a << endl;
// }
//
// //老版本 这样写
// int sum(int a,int b)throw() {
//     return a+b;
// }
//
// //不存在异常
// int max(int a,int b)noexcept {
//     return a>b?a:b;
// }
//
// class ListEmpty {
//     public:
//     ListEmpty(string str):err_info(str) {}
//     string err_code() {
//         return err_info;
//     }
// protected:
//     string err_info;
// };
//
//
//
// int main()
// {
//     //抛出异常 不做处理 如果触发异常 会终止程序
//     // test_one();
//     //try catch 不能分开 跟着的大括号不能省略
//     try
//     {
//         test_one();
//         cout << "这里的代码不会执行" << endl;
//     }catch (int)
//     {
//         cout << "除数不能为0" << endl;
//     }
//
//     //2 catch 可以获取抛出的内容
//     try
//     {
//         test_one();
//         cout << "这里的代码不会执行" << endl;
//     }catch (int num)
//     {
//         cout << num << endl;
//         cout << "除数不能为0" << endl;
//     }
//
//     //3. try可以和多个catch 搭配
//     try {
//         // test_one();
//         test_two();
//     }catch (int num) {
//         cout << num << endl;
//     }catch (double num) {
//         cout << num << endl;
//     }
//
//     //捕获任何类型异常
//     try {
//
//     }catch (...) {
//         //... 代表捕获任何抛出的内容
//     }
//     //不存在异常函数
//
//     auto pFunc=[](int a,int b)noexcept{return a+b;};
//     return 0;
// }